The invention concerns a method, software product, and computer to generate and interpret an IPDS data stream, wherein a plurality of data specifying pages to be printed are combined into groups by means of the IPDS command XOH DGB, whereby a level is respectively assigned to each group. The IPDS data stream (Intelligent Printer Data Stream) is specified in Intelligent Printer Data Stream Reference, IBM, S544-3417-05, 6th Edition (Mar. 1996), incorporated herein by reference. The commands XOH DGB (Define Group Boundary) and XOH SGO (Specify Group Operation) are explained on pages 214-218 and 262.
Print data is conveyed with the IPDS data stream from a device which generates and administrates print jobs to a printer via a data line. A controller of the printer converts the IPDS data stream into a control signal to control a print unit. An IPDS data stream comprises image data that typically specifies a page to be printed and control data that specifies general control events. In the data stream, the image data and the control data are typically arranged alternating successively, whereby individualized control data can also be comprised in the framework of the image data.
With the instruction XOH SGO, a command that is valid for a group of print data, in particular a group of print data describing a plurality of pages, is transmitted to a printer. This command (that is designated as an operation) is stored by the printer and implemented on the entire group of print data. A determined level is associated with this group. Within the group, a subgroup can again be grouped with the XOH DBL instruction, for which a further command is valid. This subgroup is assigned a further level with a lesser value than the level of the group above.
FIG. 1 shows an example of a data stream in which different levels are defined, whereby the levels are correspondingly marked. To simplify FIG. 1, the instruction “XOH SGO” is abbreviated as “SGO”, and the instruction “XOH DGB” is abbreviated as “DGB”. These abbreviations are also retained in the further specification.
First, the individual levels are defined with the instruction SGO, whereby the levels are designated as X80, X60, X40, X20, and a specific operation that is designated with X01, X03 or X04 is assigned to each level, whereby the letter “X” denotes a hexadecimal number. However, it is omitted in the following.
According to the current specification of the position detection system (FIG. 2), there are merely four different operations, namely one with the level number 01 for the operation that keeps the print data at a specific group together for a print job, one with the level number 02 for the command that keeps the print data together for the output of a microfilm, one with the level number 03 for the command to save the pages in the printer, and one with the level number 04 for the command “postprocess”. The individual commands or operations can be more closely specified with the instruction DGB.
Before a DGB instruction can be used, the corresponding levels must be defined and an operation must be assigned to each level. The definition of the levels and the operations can thereby be cleared with solely an initialization of the system or of the printer. However, in running interference-free operation, it is not possible to implement such an initialization. This has the result that in the generation of a print data stream it must be exactly recorded which levels were defined and which operations were assigned to them. Since the use of a plurality of levels can result in very complex structures, in the generation of a print data stream it is often difficult, given the use of a plurality of levels, to prevent errors due to a false association of the operations to levels. Given the use of a level in the print data stream, each of them must be checked whether, for a specific operation to be implemented, a level can be found that is smaller than the current active level and that was not previously used in connection with another operation. It can thus be difficult to actually find a suitable level.
A print system comes from U.S. Pat. No. 5,592,683, incorporated herein by reference, in which commands for the preprocessing, for the print data, and for the post-processing are integrated into the data stream comprising the print data.
In the specification “UP3I; Universal Printer Pre- and Post-Processing Interface”, Version 1.02 (Jul. 2002), incorporated herein by reference and published by the firms Duplo International Ltd., Hunkeler AG, IBM Corporation, Océ Printing Systems GmbH and Strålfors AB that can be downloaded as data at the Internet address www.up3i.org, various control instructions are provided that can be used in the generation of a printed document to control different devices of a print production system, such as printing devices and these upstream and downstream devices such as, for example, winders, cutting devices, punching devices, stapling devices, and binding devices. It is thereby provided that such data are exchanged between the different devices, thus for example between a paper dispensing device and a print device.
On pages 134 to 141 of the UP3I specification, examples are already cited as to how instructions for printing preprocessing devices or post-processing devices can be inserted into an AFP (MO:DCA) or IPDS data stream. With the UP3I expansion, AFP applications can now comprise UP3I control commands which are transmitted to a printer, whereby printer-specific data formats such as IPDS can be used. The UP3I control data are thereby initially mixed with the print data and are first separated from them in the printer. The further devices of the print production system (i.e. preprocessing devices and post processing devices for the print material such as, for example, paper dispensers, winders, staplers, punchers, folding devices, cutting devices, and binding devices) can then be activated via the UP3I interface of the printer.
With the level instructions cited above, various processing devices or processing steps can be associated with specific regions of the data stream. More is written on this in the German patent application Nr. 102 35 254.2, incorporated herein by reference.
The previously cited publications are hereby included by reference in the present application.